export interface ApiResponse<T = any> {
    code: number;
    msg: string;
    data: T;
    timestamp: string;
    traceId?: string;
}

export interface PaginatedResponse<T = any> extends ApiResponse<T[]> {
    pagination: {
        page: number;
        pageSize: number;
        total: number;
        totalPages: number;
    };
}

export interface ErrorResponse extends ApiResponse<null> {
    error?: string;
    details?: any;
}
